{
  "compilerOptions": {
    "target": "ES2020",
    "useDefineForClassFields": true,
    "lib": ["ES2020", "DOM", "DOM.Iterable"],
    "module": "ESNext",
    "skipLibCheck": true,

    /* ------------------ Bundler mode */
    "moduleResolution": "bundler",
    "allowImportingTsExtensions": true,
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "jsx": "react-jsx",

    /* ------------------ Linting */
    "strict": true,
    "noUnusedLocals": true,
    "noUnusedParameters": true,
    "noFallthroughCasesInSwitch": true,

    /* ------------------ Alias */
    "baseUrl": "src",
    "paths": {
      /* ------ MAIN */
      "src/*" : ["./*"],
      "store/*": ["store/*"],
      "components/*" : ["components/*"],

      "common/*": ["components/common/*"],

      /* ------ MODAL */
      "modal/*": ["components/Modal/*"],

      /* ------ PAGES */
      "pages/*" : ["pages/*"],
      "profile/*": ["pages/ProfilePage/*"],
      "ingredients/*": ["pages/IngredientDetailsPage/*"],
      "orders/*": ["pages/OrderDetailsPage/*"],

      /* ------ HOOK */
      "hooks/*": ["services/hooks/*"],

      /* ------ STYLES/ASSETS */
      "styles/*": ["styles/*"],
      "images/*": ["images/*"],

      /* ------ UTILS/SERVICES */
      "services/*": ["services/*"],
      "utils/*": ["services/utils/*"],
      "slices/*": ["services/slices/*"],
      "declarations/*": ["services/declarations/*"]
    }
  },
  "include": ["src"],
  "files": ["vite.config.ts"]
}